/**
 * 目标：基于 Web 服务，开发-省份列表数据接口
 * 步骤：
 *  1. 创建 Web 服务
 *  2. 使用 req.url 获取请求的资源路径，读取 json 文件数据返回
 *  3. 其他请求的路径，暂时返回不存在的提示
 *  4. 运行 Web 服务，用浏览器请求地址查看效果
 */

const fs = require('fs')
const path = require('path')
const http = require('http')
const qs = require('querystring')
const server =  http.createServer()

server.on('request',(req,res)=>{
    if(req.url === '/api/pr' ){
      fs.readFile(path.join(__dirname,'data/province.json'),(err,data)=>{
        if(err) return console.log(err);
        res.setHeader('Content-Type', 'application/json;charset=utf-8')
        res.end(data.toString())
      })  
    }else if(req.url.startsWith('/api/city')) {

      // console.log(req.url);
      // 获取添加的请求字符串
      const string =  req.url.split('?')[1]
      // console.log(string);

      // 把字符串转换成对象
      const obj = qs.parse(string)
      console.log( obj.panme);
      // console.log(obj);
      // 使用fs读取数据拿到市区
      fs.readFile(path.join(__dirname,'data/city.json'),(err,data)=>{
        if(err) return console.log(err);
        // console.log(JSON.parse(data));

        // 把数据转换为字符串
       const cityobj  = JSON.parse(data)
       const citylist = cityobj[obj.panme]
        // console.log(citylist);
        res.setHeader('Content-Type', 'application/json;charset=utf-8')
        res.end(JSON.stringify(citylist))

      })
    } else{
         res.setHeader('Content-Type', 'application/json;charset=utf-8')
         res.end('你要访问的数据不存在')
    }

})

server.listen(3000,()=>{
    console.log('服务器启动了');
})